case class DiaProd[P[_, _]](paa: PolyFunction1[P])